Information Technology (IT) systems depend on reliable data stores and these data stores are often situated outside of the secure computational environment of the IT system and consequently are vulnerable to attack. Secure computational environments can be used to protect their internal applications from physical and logical attacks, but these applications may still depend on external data stores, which cannot be deployed inside the secure computational environment. See Trapp, et al., “Method and Apparatus for Secure Processing of Sensitive Data,” application Ser. No. 10/065,802, hereby incorporated herein by reference.
Standard cryptographic techniques can be used to encrypt and authenticate the contents of the data store, and can thus protect the data against spying and unauthorized modifications, but they are not sufficient to guarantee that queries to a data store always return the most accurate and up-to-date data. A replay attack to a query against a data store is an attack in which an attacker answers the query with data that was once stored in the data store, but is no longer current. An attacker who gains entry into the data store can respond to queries made by an application program with outdated data, dissimulating that these are the actual contents of the data store. Such an attack is often called a replay attack, because the attacker “replays” data that was formerly valid in the system. This is a critical problem in many applications today which rely on information from data stores. The severity of this problem becomes apparent if one considers an application querying the amount in a bank account or entries in a watch list of criminals.
Although there are known countermeasures to replay attacks for secure communication channels over computer networks, these techniques cannot be adapted to guard against replay attacks for database queries against a data store situated outside the secure computational environment (i.e., a non-secure data store). Most large systems today execute outside of a secure computational environment, therefore there is a need for a method which overcomes the shortcomings of the prior art.